package com.fjut.zr.judge_system.VJ.VJS;

import com.fjut.zr.judge_system.POJO.PO.TVjResultPO;
import com.fjut.zr.judge_system.VJ.VjSubmitter;

public abstract class BaseVJ {
    protected static String GET_TITLE_ERROR="获取题目错误！";

    /**
     * 获取某账号在目标oj上最近提交过的rid
     *
     * 如果提交的http请求无法返回rid，那么实现这个方法。
     *      评测时，先获取rid。然后提交，再获取rid。如果两次rid不同则表示提交成功，rid为第二次获取的rid
     * @param s 提交器
     * @return rid
     */
    public abstract String getRid(VjSubmitter s);

    /**
     * 提交代码
     * @param s 提交器。提交内容在s.getSubmitInfo()
     * @return 字符串
     */
    public abstract String submit(VjSubmitter s);

    /**
     * 获取评测结果
     * @param s 提交器
     * @return 返回的结果
     */
    public abstract TVjResultPO getResult(VjSubmitter s);



}
